package so.sao.shop.supplier.service;

import so.sao.shop.supplier.pojo.Result;
import so.sao.shop.supplier.pojo.input.CheckOrderSearchInput;

import java.io.IOException;

/**
 * <p>Version: supplier V1.2.0 </p>
 * <p>Title: CheckingAccountResultService</p>
 * <p>Description: 对账结果</p>
 *
 * @author: fangzhou
 * @Date: Created in 2017/11/22 10:36
 */
public interface CheckingAccountResultService {

    /**
     * 根据订单编号查询订单的支付记录及阿里对账数据的支付记录
     *
     * @param orderId 订单编号
     * @return
     */
    Result findPaymentByOrderId(String orderId);

    /**
     * 根据条件查询订单列表
     * @param checkOrderSearchInput 查询条件
     * @return 返回订单列表
     */
    Result searchOrders(CheckOrderSearchInput checkOrderSearchInput);
    /**
     * 根据对账类型查询对账结果
     * @param checkingType 对账状态
     * @param pageSize 当前页面大小(默认值10)
     * @param pageNum 当前页号(默认值1)
     * @param Id 用户id
     * @return
     */
    Result selectMatchingRecordByCheckType(Integer checkingType,Integer pageSize,Integer pageNum,Long Id);

    /**
     * 对账
     *
     * @param checkerId
     * @return
     */
    Result checkingAccount(Long checkerId,String tempPath) throws IOException;
}
